import util from "commons/util";

/**
 * 内部跳转处理
 * @description 根据登录状态进行跳转
 * @param {String} url 跳转url 
 * @param {Boolean} needLogin 是否需要已登录
 * @param {String} type 跳转类型 href|replace
 */
const innerRouter = function (url = "", needLogin = false, type = "href") {
    if (!url) {
        console.error("没有url参数");
        return;
    }

    // 需要登录并且已登录, 或者不需要登录，跳转目标链接
    if ((!!needLogin && !!window["hIsLogin"]) || !needLogin) {
        if (type == "replace") {
            location.replace(url);
        } else {
            location.href = url;
        }
        return;
    }

    // 需要登录，但是未登录，跳转登录页
    if (!!needLogin && !window["hIsLogin"]) {
        location.href = `./login.html${util.joinQueryString({
            redirectUrl: url
        })}`
    }

    return;
}

export default innerRouter;